home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Night Owl 6
/
Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso
/
033a
/
prokit34.zip
/
TIPS.DOC
< prev
next >
Wrap
Text File
|
1991-04-01
|
8KB
|
162 lines
ProKit Door Writing Tips (C) 1988 S.H.Smith
------------------------ ProKit 2.8, 8/4/88
+ Do all output with DISP, DISPLN and NEWLINE functions.
+ Do NOT use Borland's CRT unit. The CRT unit will lock up in some
multi-task systems, and does not communicate.
+ Use one of the provided input functions to read from the user
GET_CMDLINE - for command lines
INPUT - for lines with length limits
GET_KEY - for single characters (no echo)
+ Use the supplied functions to select one of the seven basic colors
aRED, aGREEN, aBLUE, aCYAN, aMAGENTA, aWHITE, aGRAY.
These can be used at any time (even in non-graphic mode).
+ Use these functions ONLY when in GRAPHICS mode:
POSITION(x,y);
CLEAR_SCREEN;
CLEAR_EOL;
+ Check the GRAPHICS flag before sending any ANSI codes to the user;
some users won't accept ansi codes.
+ Check the DUMP_USER flag in all major program loops. This flag is set
if the user hangs up, his time runs out, or if the sysop wants to dump
the caller out of the door.
+ Always call UNINIT before calling HALT to terminate a door program.
Otherwise the dangling interrupt handlers will crash the system.
+ The first line of a ProKit config files must be the com driver type.
This can be one of:
INTERRUPT ;the best, fastest
BIOS ;if interrupts fail to work
Your door program is free to re-open the config file and read additional
information from it.
+ ProKit based doors can be tested with a special "local sysop" mode of
operation. In this mode, you need not load PCBoard to run the door.
This option is selected by adding 'LOCAL' to the end of the door
command line. For example:
prokit prokit.cnf \pcb2 LOCAL
will run the ProKit demo door in sysop-local mode directly from DOS.
+ The standard DOOR script for ProKit doors has this format:
echo off
cd \pro
prokit prokit.cnf c:\pcb2
cd \pcb2
if exist event.bat event <<<--- take note
board
Notice line 5. This line will start your timed event if needed. Any
door that can logoff a user (during carrier loss or with goodbye) has
the possibility of starting the event.
+ The F5 (shell to DOS) function will only work if you leave enough
free ram for a new copy of COMMAND.COM to be loaded. To do this, you
need to include this directive in your main program:
{$M 12000,40000,40000} {Stack, minheap, maxheap}
Adjust the values to your needs, but limit the MAXHEAP setting to the
smallest value that is needed. This leaves the rest of memory available
for the shell.
+ Take a look at the sample door - PROKIT.PAS - it has examples of how
to use many of ProKit's features.
+ Call the function load_cnames_file during your door initialization if
you are going to access the conf_info data structure. This is no
longer automatically loaded, speeding up doors that have no interest
in this data.
+ The new pdisp and pdispln procedures allow "macros" to be expanded.
Here is a list of the macros that are available:
All display files can refer to special "macros" that are possibly
different for each caller. ProDoor supports both PCBoard-compatible
@ macros as well as it's own unique $ macros.
MACRO MEANING
$2$ used in PROTRNS
$3$ used in PROTRNS
$4$ used in PROTRNS
$5W$ used in PROTRNS
$6W$ used in PROTRNS
$7L$ used in PROTRNS
$8S$ used in PROTRNS
$@$ file list pathname for dsz
$B$ modem open baud rate
$BLUE$ the color blue
$C$ connect bps
$CLREOL$ clear to end of line
$CONF$ conference number with mail waiting
$CONFNUM$ current conference number
$CYAN$ the color cyan
$DEFAULT$ the default color
$DISP-fname$ display specified text file
$FIRST$ callers first name
$HELPFILE$ interpret remainder of file as a multi-topic HELP
file
$GRAY$ the color gray
$GREEN$ the color green
$IFMEMBER-nn$ YES or NO is the caller a member of specified
conference number
$LASTMSGNO$ high message number
$MAGENTA$ the color magenta
$MAIL$ mail file name
$MSGCOUNT$ active message count
$N$ port number 0=local, 1..4
$NAME$ callers full name =- @USER@
$NO$ literally "NO"
$NODE$ current node number
$NOMACS$ disable macros for remainder of display
$NONSTOP$ display the rest of the file non-stop
$PLAY$ playpen directory
$R$ result filename for batches
$RED$ the color red
$SCRATCH$ scratch file name
$SYSOP$ sysop name
$TIME$ minutes left
$WHITE$ the color white
$YELLOW$ the color yellow
$YES$ literally "YES"
@BEEP@ beep speaker, control-g
@BOARDNAME@ the name of your BBS
@BPS@ estimated connect bps
@BYTELIMIT@ bytes allowed from PWRD file
@BYTESLEFT@ remaining bytes available for download for that
day
@CITY@ city and state of caller (all caps)
@CLS@ clear screen
@DATAPHONE@ caller's business/data phone number
@DAYBYTES@ bytes downloaded so far that day
@DLBYTES@ total bytes downloaded - all calls
@DLFILES@ total files downloaded - all calls
@EVENT@ time of next scheduled event
@EXPDATE@ subscription expiration date
@FIRST@ first name of the user (first letter capitalized)
@HOMEPHONE@ caller voice phone number
@INCONF@ conference the caller is currently in
@LASTDATEON@ last date on (mm-dd-yy format)
@LASTTIMEON@ last time on (hh:mm format)
@MORE@ force a "MORE" prompt
@NUMCALLS@ total number of callers in system
@NUMTIMESON@ umber of times on system
@SECURITY@ users current security level including conf. add.
@SYSDATE@ host date in (mm-dd-yy format)
@SYSTIME@ host system in (hh:mm format)
@TIMELEFT@ time remaining that call incl. all credits, etc.
@TIMELIMIT@ time allowed from PWRD file
@TIMEUSED@ minutes used since logon
@UPBYTES@ total bytes uploaded - all calls
@UPFILES@ total files uploaded - all calls
@USER@ complete name of the caller (first & last - all
caps)
@WAIT@ force a "press enter to continue" prompt
@X pcboard 14.5-compatible color codes